function a2p(a,b){
    if(a<0){
        a=0;
    }
    if(a>90){
        a=90;
    }
    if(b<90){
        b=90;
    }
    if(b>180){
        b=180;
    }
    let a0=a*Math.PI/180;
    let b0=b*Math.PI/180;
    let A= [ 50*Math.cos(a0),50*Math.sin(a0)]  ;
    let c0=a0-Math.PI+b0;
    let B=[A[0]+40*Math.cos(c0),A[1]+40*Math.sin(c0)];
    return B;
}

function p2a(x,y){
    if(x*x+y*y>90*90){
         x=Math.sqrt(90*90-y*y)
    }
    if(y<=-40){
        x=50;
        y=-40;
    }else if(y>-40 && y<=0){
        if(x*x+y*y<40*40+50*50){
            x=Math.sqrt(40*40+50*50-y*y)
        }
        if((x-50)*(x-50)+(y-0)*(y-0)>(40)*(40)){
            x=50+Math.sqrt((40)*(40)-y*y)
        }
    }else if(y>0 && y<=50){
        if(x*x+y*y<40*40+50*50){
            x=Math.sqrt(40*40+50*50-y*y)
        }
        if(x*x+y*y>(40+50)*(40+50)){
            x=Math.sqrt((40+50)*(40+50)-y*y)
        }
    }else if(y>50 && y<90){
        if((x-0)*(x-0)+(y-50)*(y-50)<(40)*(40)){
            x=Math.sqrt((40)*(40)-(y-50)*(y-50))
        }
        if(x*x+y*y>(40+50)*(40+50)){
            x=Math.sqrt((40+50)*(40+50)-y*y)
        }
    }if(y>=90){
        x=0;
        y=90;
    }

    let b= Math.acos((50*50+40*40-(x*x+y*y))/(2*50*40));
    let a0= Math.acos((50*50+x*x+y*y-40*40)/(2*Math.sqrt(x*x+y*y) *50));
    let a1=Math.atan(y/x);
    let a=a0+a1;
    a= a*180/Math.PI;
    b= b*180/Math.PI;
    if(a<0){
        a=0;
    }
    if(a>90){
        a=90;
    }
    if(b>180){
        b=180;
    }
    if(b<90){
        b=90;
    }
    return [a,b];
}

export default {
    p2a,
    a2p
}

